900
How do I get ride of the separator items when the user performs grouping

// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
private void axGrid1_AddGroupItem(object sender, AxEXGRIDLib._IGridEvents_AddGroupItemEvent e)
{
	axGrid1.Items.set_ItemDividerLine(e.item,EXGRIDLib.DividerLineEnum.EmptyLine);
}
//this.axGrid1.AddGroupItem += new AxEXGRIDLib._IGridEvents_AddGroupItemEventHandler(this.axGrid1_AddGroupItem);

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = false;
// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
ADODB.Recordset rs = new ADODB.Recordset();
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",ADODB.CursorTypeEnum.adOpenStatic,ADODB.LockTypeEnum.adLockOptimistic,0);
axGrid1.DataSource = (rs as ADODB.Recordset);
axGrid1.SortBarVisible = true;
axGrid1.SortBarCaption = "Drag a <b>column</b> header here to group by that column.";
axGrid1.AllowGroupBy = true;
axGrid1.Columns[1].SortOrder = EXGRIDLib.SortOrderEnum.SortAscending;
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exGroupLinesOutside;
axGrid1.EndUpdate();

899
How do I split a cell in three parts, and having a radio button in each of them

// CellStateChanged event - Fired after cell's state has been changed.
private void axGrid1_CellStateChanged(object sender, AxEXGRIDLib._IGridEvents_CellStateChangedEvent e)
{
	System.Diagnostics.Debug.Print( axGrid1.Items.get_CellCaption(e.item,e.colIndex) );
}
//this.axGrid1.CellStateChanged += new AxEXGRIDLib._IGridEvents_CellStateChangedEventHandler(this.axGrid1_CellStateChanged);

// Click event - Occurs when the user presses and then releases the left mouse button over the grid control.
private void axGrid1_ClickEvent(object sender, EventArgs e)
{
	int h = axGrid1.get_ItemFromPoint(-1,-1,c,hit);
	axGrid1.Items.set_CellState(h,c,1);
}
//this.axGrid1.ClickEvent += new EventHandler(this.axGrid1_ClickEvent);

axGrid1.BeginUpdate();
axGrid1.FullRowSelect = EXGRIDLib.CellSelectEnum.exColumnSel;
axGrid1.SelBackColor = axGrid1.BackColor;
axGrid1.SelForeColor = axGrid1.ForeColor;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
axGrid1.ShowFocusRect = false;
(axGrid1.Columns.Add("Default") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("entire");
	h = var_Items.AddItem("Radio <b>1");
	var_Items.set_CellRadioGroup(h,0,100);
	var_Items.set_CellHasRadioButton(h,0,true);
	var_Items.set_CellState(h,0,1);
	h = var_Items.get_SplitCell(h,0);
	var_Items.set_CellValue(0,h,"Radio <b>2");
	var_Items.set_CellRadioGroup(0,h,100);
	var_Items.set_CellHasRadioButton(0,h,true);
	h = var_Items.get_SplitCell(0,h);
	var_Items.set_CellValue(0,h,"Radio <b>3");
	var_Items.set_CellRadioGroup(0,h,100);
	var_Items.set_CellHasRadioButton(0,h,true);
	h = var_Items.AddItem("entire");
axGrid1.EndUpdate();

898
Does your grid include a row indicator , like an arrow, bullet

// SelectionChanged event - Fired after a new item has been selected.
private void axGrid1_SelectionChanged(object sender, EventArgs e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		int hFocusItem = var_Items.FocusItem;
		var_Items.set_CellValue(axGrid1.Columns["active"].Data,"active","");
		var_Items.set_CellValue(hFocusItem,"active","<c><font symbol>·");
		var_Items.set_CellVAlignment(hFocusItem,"active",EXGRIDLib.VAlignmentEnum.exBottom);
		axGrid1.Columns["active"].Data = hFocusItem;
}
//this.axGrid1.SelectionChanged += new EventHandler(this.axGrid1_SelectionChanged);

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = false;
// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
ADODB.Recordset rs = new ADODB.Recordset();
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",ADODB.CursorTypeEnum.adOpenStatic,ADODB.LockTypeEnum.adLockOptimistic,0);
axGrid1.DataSource = (rs as ADODB.Recordset);
axGrid1.ShowFocusRect = false;
axGrid1.ContinueColumnScroll = true;
axGrid1.ScrollBySingleLine = true;
axGrid1.AutoDrag = EXGRIDLib.AutoDragEnum.exAutoDragScrollOnShortTouch | EXGRIDLib.AutoDragEnum.exAutoDragScroll;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("") as EXGRIDLib.Column);
	var_Column.Key = "active";
	var_Column.Position = 0;
	var_Column.AllowSizing = false;
	var_Column.Width = 12;
	var_Column.Data = axGrid1.Items.FocusItem;
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
axGrid1.CountLockedColumns = 1;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_SelectItem(var_Items.get_NextVisibleItem(var_Items.FocusItem),true);
axGrid1.EndUpdate();

897
How can I connect to a DBF file
axGrid1.ColumnAutoResize = false;
axGrid1.ContinueColumnScroll = false;
// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
ADODB.Recordset rs = new ADODB.Recordset();
	rs.Open("Select * From foxcode.DBF","Provider=vfpoledb;Data Source=C:\\Program Files\\Microsoft Visual FoxPro 9\\",ADODB.CursorTypeEnum.adOpenStatic,ADODB.LockTypeEnum.adLockOptimistic,0);
axGrid1.DataSource = (rs as ADODB.Recordset);

896
Does your control supports scrolling by touching the screen

axGrid1.ColumnAutoResize = false;
// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
ADODB.Recordset rs = new ADODB.Recordset();
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",ADODB.CursorTypeEnum.adOpenStatic,ADODB.LockTypeEnum.adLockOptimistic,0);
axGrid1.DataSource = (rs as ADODB.Recordset);
axGrid1.ContinueColumnScroll = true;
axGrid1.ScrollBySingleLine = true;
axGrid1.AutoDrag = EXGRIDLib.AutoDragEnum.exAutoDragScrollOnShortTouch | EXGRIDLib.AutoDragEnum.exAutoDragScroll;

895
How do I prevent showing the control's BackColorAlternate property on empty / non-items part of the control

axGrid1.BeginUpdate();
(axGrid1.GetOcx() as EXGRIDLib.Grid).BackColorAlternate = 0x7ff0f0f0;
axGrid1.Columns.Add("Column");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("Item 1");
	var_Items.AddItem("Item 2");
	var_Items.AddItem("Item 3");
	var_Items.AddItem("Item 4");
	var_Items.AddItem("Item 5");
axGrid1.EndUpdate();

894
Is there any method for reading information from the root item for the current item...

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.SearchColumnIndex = 0;
axGrid1.Columns.Add("Info");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.PathSeparator = " ; ";
	var_Items.set_SelectItem(var_Items.InsertItem(var_Items.InsertItem(var_Items.InsertItem(var_Items.InsertItem(null,null,"Root"),null,"Child"),null,"Sub-Child"),null,"Sub-Sub-Child"),true);
	var_Items.set_ExpandItem(0,true);
	System.Diagnostics.Debug.Print( var_Items.get_FullPath(var_Items.FocusItem) );
axGrid1.EndUpdate();

893
How can I highlight items with a specified date

axGrid1.BeginUpdate();
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Tasks");
	EXGRIDLib.Column var_Column = (var_Columns.Add("Date") as EXGRIDLib.Column);
		var_Column.SortType = EXGRIDLib.SortTypeEnum.SortDate;
		var_Column.Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem("Task 1"),1,Convert.ToDateTime("12/13/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.set_CellValue(var_Items.AddItem("Task 2"),1,Convert.ToDateTime("12/14/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.set_CellValue(var_Items.AddItem("Task 2"),1,Convert.ToDateTime("12/15/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
axGrid1.ConditionalFormats.Add("%1 = #12/14/2001#",null).Bold = true;
axGrid1.EndUpdate();

892
Today date is shown, if we use the Column.FormatColumn and Editor.Option(exDateAllowNullDate) properties. What can be done

axGrid1.BeginUpdate();
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Date") as EXGRIDLib.Column);
	var_Column.FormatColumn = "len(value) ? ( (longdate(date(value)) left 3) + ' ' + day(date(value)) + '/' + month(date(value)) + '/' + (year(date(value)) ri" +
"ght 2) ) : '' )";
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exDateAllowNullDate,true);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(Convert.ToDateTime("5/12/2012",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.AddItem(null);
	var_Items.AddItem(Convert.ToDateTime("5/14/2012",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
axGrid1.EndUpdate();

891
How can I add multiple values/columns on the same line/item/row

// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	axGrid1.Refresh();
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

axGrid1.BeginUpdate();
axGrid1.SortOnClick = EXGRIDLib.SortOnClickEnum.exNoSort;
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exGroupLinesOutside;
axGrid1.Indent = 13;
axGrid1.HeaderVisible = false;
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Items");
	(var_Columns.Add("Quantity") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	(var_Columns.Add("Value") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Items");
	var_Items.set_CellValue(h,2,"sum(current,dir,dbl(%1)*dbl(%2))");
	var_Items.set_CellValueFormat(h,2,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_FormatCell(h,2,"`Total: `+ value");
	var_Items.set_CellHAlignment(h,2,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_CellBold(h,2,true);
	var_Items.set_CellEditorVisible(h,2,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.set_CellEditorVisible(h,1,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	int h1 = var_Items.InsertItem(h,null,"Item 1");
	var_Items.set_CellValue(h1,1,10);
	var_Items.set_CellValue(h1,2,3);
	h1 = var_Items.InsertItem(h,null,"Item 2");
	var_Items.set_CellValue(h1,1,20);
	var_Items.set_CellValue(h1,2,4);
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

890
Is there a syntax for conditional formatting of items, based on CellState/CellStateChange

// CellStateChanged event - Fired after cell's state has been changed.
private void axGrid1_CellStateChanged(object sender, AxEXGRIDLib._IGridEvents_CellStateChangedEvent e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		var_Items.set_CellValue(e.item,2,var_Items.get_CellState(e.item,0));
}
//this.axGrid1.CellStateChanged += new AxEXGRIDLib._IGridEvents_CellStateChangedEventHandler(this.axGrid1_CellStateChanged);

axGrid1.BeginUpdate();
axGrid1.ShowFocusRect = false;
axGrid1.SelBackMode = EXGRIDLib.BackModeEnum.exTransparent;
EXGRIDLib.ConditionalFormat var_ConditionalFormat = axGrid1.ConditionalFormats.Add("%2 != 0",null);
	var_ConditionalFormat.Bold = true;
	var_ConditionalFormat.ForeColor = (uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0));
	var_ConditionalFormat.ApplyTo = EXGRIDLib.FormatApplyToEnum.exFormatToItems;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("") as EXGRIDLib.Column);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true);
	var_Column.Width = 16;
	var_Column.AllowSizing = false;
axGrid1.Columns.Add("Information");
(axGrid1.Columns.Add("Hidden") as EXGRIDLib.Column).Visible = false;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem(""),1,"This is a bit of text associated");
	int h = var_Items.AddItem("");
	var_Items.set_CellValue(h,1,"This is a bit of text associated");
	var_Items.set_CellState(h,0,1);
	var_Items.set_CellValue(var_Items.AddItem(""),1,"This is a bit of text associated");
axGrid1.EndUpdate();

889
How do I programatically focus a cell

// FocusChanged event - Occurs when a new cell is focused.
private void axGrid1_FocusChanged(object sender, EventArgs e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		var_Items.set_CellBackColor(var_Items.FocusItem,axGrid1.FocusColumnIndex,(uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0)));
}
//this.axGrid1.FocusChanged += new EventHandler(this.axGrid1_FocusChanged);

axGrid1.BeginUpdate();
axGrid1.SelForeColor = axGrid1.ForeColor;
axGrid1.SelBackColor = axGrid1.BackColor;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exRowLines;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column1");
	var_Columns.Add("Column2");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem("Cell 1.1"),1,"Cell 1.2");
	var_Items.set_CellValue(var_Items.AddItem("Cell 2.1"),1,"Cell 2.2");
EXGRIDLib.Items var_Items1 = axGrid1.Items;
	var_Items1.set_SelectItem(var_Items1[1],true);
axGrid1.FocusColumnIndex = 1;
axGrid1.EndUpdate();

888
How do I programatically focus a cell (excrd)

// FocusChanged event - Occurs when a new cell is focused.
private void axGrid1_FocusChanged(object sender, EventArgs e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		var_Items.set_CellBackColor(var_Items.FocusItem,axGrid1.FocusColumnIndex,(uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0)));
}
//this.axGrid1.FocusChanged += new EventHandler(this.axGrid1_FocusChanged);

axGrid1.BeginUpdate();
axGrid1.SelForeColor = axGrid1.ForeColor;
axGrid1.SelBackColor = axGrid1.BackColor;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exRowLines;
axGrid1.DefaultItemHeight = 36;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Column1") as EXGRIDLib.Column).Visible = false;
	(var_Columns.Add("Column2") as EXGRIDLib.Column).Visible = false;
	(var_Columns.Add("Column3") as EXGRIDLib.Column).Visible = false;
	EXGRIDLib.Column var_Column = (var_Columns.Add("FormatLevel") as EXGRIDLib.Column);
		var_Column.FormatLevel = "(0/1),2";
		var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellFormatLevel,var_Column.FormatLevel);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Cell 1.1");
	var_Items.set_CellValue(h,1,"Cell 1.2");
	var_Items.set_CellValue(h,2,"Cell 1.3");
	h = var_Items.AddItem("Cell 2.1");
	var_Items.set_CellValue(h,1,"Cell 2.2");
	var_Items.set_CellValue(h,2,"Cell 2.3");
EXGRIDLib.Items var_Items1 = axGrid1.Items;
	var_Items1.set_SelectItem(var_Items1[1],true);
axGrid1.FocusColumnIndex = 2;
axGrid1.EndUpdate();

887
How do I programmatically exclude items from the filter

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Items") as EXGRIDLib.Column);
	var_Column.DisplayFilterButton = true;
	var_Column.DisplayFilterPattern = false;
	var_Column.FilterList = EXGRIDLib.FilterListEnum.exShowExclude | EXGRIDLib.FilterListEnum.exShowFocusItem | EXGRIDLib.FilterListEnum.exShowCheckBox;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("Item 1");
	var_Items.AddItem("Item 2");
	var_Items.AddItem("Item 3");
	var_Items.AddItem("Item 4");
EXGRIDLib.Column var_Column1 = axGrid1.Columns[0];
	var_Column1.FilterType = EXGRIDLib.FilterTypeEnum.exFilterExclude | EXGRIDLib.FilterTypeEnum.exFilter;
	var_Column1.Filter = "Item 1|Item 4";
axGrid1.ApplyFilter();
axGrid1.EndUpdate();

886
Using the property Column.FormatColumn I want to display numbers in the numeric format with no decimals - unless the value is NULL then I want to display a blank or empty

axGrid1.BeginUpdate();
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Format") as EXGRIDLib.Column).FormatColumn = "len(value) ? (value format '0') : '' ";
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(10);
	var_Items.AddItem(null);
	var_Items.AddItem(-8);
axGrid1.EndUpdate();

885
How can I change the drop down filter background color

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exBackColorFilter,(uint)ColorTranslator.ToWin32(Color.FromArgb(255,255,255)));
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Items") as EXGRIDLib.Column);
	var_Column.DisplayFilterButton = true;
	var_Column.DisplayFilterPattern = false;
	var_Column.FilterList = EXGRIDLib.FilterListEnum.exShowFocusItem | EXGRIDLib.FilterListEnum.exShowCheckBox | EXGRIDLib.FilterListEnum.exSortItemsAsc | EXGRIDLib.FilterListEnum.exLeafItems;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root 1");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("Root 2");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.InsertItem(h,null,"Child 3");
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

884
I am using AllowGroupBy property and calling the Column.SortOrder property groups by that column. Is it possible to prevent that, so I have a similar behavior like I click the column's header rather than dragging it to the control's GroupBy bar

EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("First");
	var_Columns.Add("Second");
	var_Columns.Add("Third");
axGrid1.SortBarVisible = true;
axGrid1.SingleSort = false;
axGrid1.AllowGroupBy = true;
axGrid1.Layout = "SingleSort = \"C0:1\";MultipleSort = \"C1:2 C2:1\"";

883
Calling programatically the Column.SortOrder property adds the column to the sort bar. Is it possible to prevent that, so I have a similar behavior like I click the column's header rather than dragging it to the control's Sort bar

EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("First");
	var_Columns.Add("Second");
	var_Columns.Add("Third");
axGrid1.SortBarVisible = true;
axGrid1.SingleSort = false;
axGrid1.Layout = "SingleSort = \"C0:1\"";

882
How do I restore/clear the HotBackColor/HotForeColor properties

axGrid1.BeginUpdate();
axGrid1.HotBackColor = Color.FromArgb(0,0,255);
axGrid1.HotForeColor = Color.FromArgb(255,255,255);
(axGrid1.Columns.Add("Value") as EXGRIDLib.Column).Visible = false;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("USD") as EXGRIDLib.Column);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	var_Column.FormatColumn = "len(%0) ? ((0:=dbl(%0)) < 10 ? '<fgcolor=808080><font ;7>' : '<b>') + `USD `+ (=:0 format ``)";
EXGRIDLib.Column var_Column1 = (axGrid1.Columns.Add("EUR") as EXGRIDLib.Column);
	var_Column1.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	var_Column1.FormatColumn = "len(%0) ? ((0:=0.72*dbl(%0)) < 10 ? '<fgcolor=808080><font ;7>' : '<b>') + `EUR `+ (=:0 format ``)";
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("1.23");
	var_Items.AddItem("2.34");
	var_Items.AddItem("9.94");
	var_Items.AddItem("11.94");
	var_Items.AddItem("1000");
axGrid1.HotBackColor = axGrid1.BackColor;
axGrid1.HotForeColor = axGrid1.ForeColor;
axGrid1.EndUpdate();

881
How do I format a column using a currency, and another column to another currency

(axGrid1.Columns.Add("Value") as EXGRIDLib.Column).Visible = false;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("USD") as EXGRIDLib.Column);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	var_Column.FormatColumn = "len(%0) ? ((0:=dbl(%0)) < 10 ? '<fgcolor=808080><font ;7>' : '<b>') + `USD `+ (=:0 format ``)";
EXGRIDLib.Column var_Column1 = (axGrid1.Columns.Add("EUR") as EXGRIDLib.Column);
	var_Column1.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	var_Column1.FormatColumn = "len(%0) ? ((0:=0.72*dbl(%0)) < 10 ? '<fgcolor=808080><font ;7>' : '<b>') + `EUR `+ (=:0 format ``)";
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("1.23");
	var_Items.AddItem("2.34");
	var_Items.AddItem("9.94");
	var_Items.AddItem("11.94");
	var_Items.AddItem("1000");

880
How can I sort the columns to be displayed on the columns floating bar

axGrid1.ColumnAutoResize = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("City") as EXGRIDLib.Column).Visible = false;
	(var_Columns.Add("Start") as EXGRIDLib.Column).Visible = false;
	(var_Columns.Add("End") as EXGRIDLib.Column).Visible = false;
axGrid1.ColumnsFloatBarVisible = EXGRIDLib.ColumnsFloatBarVisibleEnum.exColumnsFloatBarVisibleIncludeHiddenColumns;
axGrid1.ColumnsFloatBarSortOrder = EXGRIDLib.SortOrderEnum.SortAscending;

879
How can I get the column index and the row index of the active cell

// FocusChanged event - Occurs when a new cell is focused.
private void axGrid1_FocusChanged(object sender, EventArgs e)
{
	System.Diagnostics.Debug.Print( "Active/Focus-Column:" );
	System.Diagnostics.Debug.Print( axGrid1.Columns[axGrid1.FocusColumnIndex].Caption );
	EXGRIDLib.Items var_Items = axGrid1.Items;
		System.Diagnostics.Debug.Print( "Active/Focus-Row/Item:" );
		System.Diagnostics.Debug.Print( var_Items.get_CellCaption(var_Items.FocusItem,axGrid1.FocusColumnIndex) );
}
//this.axGrid1.FocusChanged += new EventHandler(this.axGrid1_FocusChanged);

axGrid1.BeginUpdate();
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("C1") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
	(var_Columns.Add("C2") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
	(var_Columns.Add("C3") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(1);
	var_Items.set_CellValue(h,1,2);
	var_Items.set_CellValue(h,2,3);
	h = var_Items.AddItem(3);
	var_Items.set_CellValue(h,1,1);
	var_Items.set_CellValue(h,2,2);
axGrid1.EndUpdate();

878
How can I add a vertical padding

axGrid1.BeginUpdate();
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Padding") as EXGRIDLib.Column);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellSingleLine,false);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellPaddingLeft,6);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellPaddingRight,6);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellPaddingTop,6);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellPaddingBottom,6);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("padding");
	var_Items.AddItem("padding");
axGrid1.EndUpdate();

877
How can I set item's height individually for every item in the control and also have line breaks in the item caption

axGrid1.BackColorAlternate = Color.FromArgb(240,240,240);
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Lines") as EXGRIDLib.Column);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellSingleLine,false);
axGrid1.ItemsAllowSizing = EXGRIDLib.ItemsAllowSizingEnum.exResizeItem;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Line 1<br>Line 2");
	var_Items.set_ItemMinHeight(h,36);
	var_Items.set_ItemHeight(h,var_Items.get_ItemMinHeight(h));
	var_Items.set_ItemMaxHeight(h,var_Items.get_ItemMinHeight(h));
	h = var_Items.AddItem("Line 1<br>Line 2");
	var_Items.set_ItemMinHeight(h,48);
	var_Items.set_ItemHeight(h,var_Items.get_ItemMinHeight(h));
	var_Items.set_ItemMaxHeight(h,var_Items.get_ItemMinHeight(h));
	h = var_Items.AddItem("Line 1<br>Line 2");
	var_Items.set_ItemMinHeight(h,64);
	var_Items.set_ItemHeight(h,var_Items.get_ItemMinHeight(h));
	var_Items.set_ItemMaxHeight(h,var_Items.get_ItemMinHeight(h));

876
The mouse-cursor is shown over the tooltip. Is it possible somehow resolve this (method 2)

// MouseMove event - Occurs when the user moves the mouse.
private void axGrid1_MouseMoveEvent(object sender, AxEXGRIDLib._IGridEvents_MouseMoveEvent e)
{
	axGrid1.ShowToolTip("This is bit of text that's shown when the user hovers the cell","Column",0,"+16","+16");
}
//this.axGrid1.MouseMoveEvent += new AxEXGRIDLib._IGridEvents_MouseMoveEventHandler(this.axGrid1_MouseMoveEvent);

axGrid1.Columns.Add("Column");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("tooltip");

875
The mouse-cursor is shown over the tooltip. Is it possible somehow resolve this (method 1)
// ToolTip event - Fired when the control prepares the object's tooltip.
private void axGrid1_ToolTip(object sender, AxEXGRIDLib._IGridEvents_ToolTipEvent e)
{
	e.x = 0;
	e.y = 0;
}
//this.axGrid1.ToolTip += new AxEXGRIDLib._IGridEvents_ToolTipEventHandler(this.axGrid1_ToolTip);

axGrid1.Columns.Add("Column");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellToolTip(var_Items.AddItem("tooltip"),0,"This is bit of text that's shown when the user hovers the cell");

874
How can I add a MIN or MAX field (for date)

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Text") as EXGRIDLib.Column).SortType = EXGRIDLib.SortTypeEnum.SortDate;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.AddItem(Convert.ToDateTime("12/11/1998",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.AddItem(Convert.ToDateTime("1/20/2014",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.AddItem(Convert.ToDateTime("1/1/2013",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	int h = var_Items.AddItem("min(all,dir,date(%0))");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'MIN: '+value");
	h = var_Items.AddItem("max(all,dir,date(%0))");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'MAX: '+value");
axGrid1.EndUpdate();

873
How can I add a MIN or MAX field (for text)

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Text") as EXGRIDLib.Column).SortType = EXGRIDLib.SortTypeEnum.SortString;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("aha");
	var_Items.AddItem("baba");
	var_Items.AddItem("aaha");
	var_Items.AddItem("aka");
	int h = var_Items.AddItem("min(all,dir,str(%0))");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'MIN: '+value");
	h = var_Items.AddItem("max(all,dir,str(%0))");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'MAX: '+value");
axGrid1.EndUpdate();

872
How can I change the the focus rectangle

axGrid1.BeginUpdate();
axGrid1.VisualAppearance.Add(1,"gBFLBCJwBAEHhEJAAEhABeEGACAADACAxRDgMQBQKAAzQFAYbBlBaERiGQYIJhUAIIRZGMQxXAcMQvDSKQJhGDAADENAxAJCI4DBIgZQNDwZQIkCY4ZDKHIfRzNAASJ" +
"IkTQPBKfYDGOLhSh6IJGRpPEIxdJMBr+fZ9QApeoYVj2J4eUCAFBxDRsZw8BiNAbkOi4Jp1f5nVJaFSxCKoSxbNqSBpGCzoJrKdI0R5JES2BAddTLBKzX7tHArLgSJ5d" +
"SrLMrwSKcRR1HSbIDyGaMUiCSqGVjWNZ5FREM46AAGbDgMILEgOZpoYDFVTZTKFCS7I6Eb40CCbCyPJQAabgWo4KAAZThNi7QAua4bTr7HqibLAexaJDOc4HVSgMLlIY" +
"EkIeg2iybAjDkfhMFuHY7mQT4xB0TBnFoUQ6i+cg2j2SIvHqVZIl8cB+BwTgPA4NRdjycg2FoHhuAMUZuHGUAwCECQUAaEYMHQHRHCGFRZEQAABO2AwRFCWQJAoGxECW" +
"TBHkGBxpg8RhYBMbJbD+TBzByfwwAwCIOCWCQiGiJgogqYh4hYIQ/k2cx9gEYQAAiRgqgsYx4mYLIOiOCMjjCTA4iScw8mMOQWEaEZkGkDgpguUIYm4SITmUCQaDuExj" +
"gkRhWhQJQ0A4ToVmWSQWFkAAljkdhiheZgZgoXIZCUWYaF2GgihmKhrg4JRJjYboVmaSIiHOHQnAkahph2ZYJmQAAxAwSQKESHwkFkKgoiAIxIHoPIimOOg2DiCgoiQJ" +
"RQTYQxwn8MgMgoMoPiaYoaGCfw4A4CJNAkOpcGQBCAg==");
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exShowFocusRect,0x1000000);
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Check") as EXGRIDLib.Column);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellPaddingLeft,2);
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true);
axGrid1.SelForeColor = axGrid1.ForeColor;
axGrid1.SelBackColor = axGrid1.BackColor;
axGrid1.DefaultItemHeight = 22;
axGrid1.ShowFocusRect = true;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("");
	var_Items.AddItem("");
axGrid1.EndUpdate();

871
Can each cell have their own dropdown lists that contain "different list item values" for each cell, not predefined for the entire column

axGrid1.BeginUpdate();
EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Column/Cell-Same") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.DropDownListType;
	var_Editor.AddItem(0,"Zero",null);
	var_Editor.AddItem(1,"One",null);
	var_Editor.AddItem(2,"Two",null);
EXGRIDLib.Editor var_Editor1 = (axGrid1.Columns.Add("Column/Cell-Different") as EXGRIDLib.Column).Editor;
	var_Editor1.EditType = EXGRIDLib.EditTypeEnum.EditType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(null);
	int h = var_Items.AddItem(0);
	EXGRIDLib.Editor var_Editor2 = var_Items.get_CellEditor(h,1);
		var_Editor2.EditType = EXGRIDLib.EditTypeEnum.DropDownListType;
		var_Editor2.AddItem(3,"Three",null);
		var_Editor2.AddItem(4,"Four",null);
	var_Items.set_CellValue(h,1,3);
	var_Items.AddItem(null);
	h = var_Items.AddItem(0);
	EXGRIDLib.Editor var_Editor3 = var_Items.get_CellEditor(h,1);
		var_Editor3.EditType = EXGRIDLib.EditTypeEnum.CheckListType;
		var_Editor3.AddItem(1,"Single",null);
		var_Editor3.AddItem(2,"Double",null);
	var_Items.set_CellValue(h,1,3);
axGrid1.EndUpdate();

870
How can I specify just a few fonts in a FontType editor

axGrid1.BeginUpdate();
axGrid1.DefaultItemHeight = 22;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exRowLines;
EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Fonts") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.FontType;
	var_Editor.ClearItems();
	var_Editor.AddItem(0,"Calibri",null);
	var_Editor.AddItem(1,"Arial",null);
	var_Editor.AddItem(2,"Rockwell",null);
	var_Editor.AddItem(3,"Tahoma",null);
	var_Editor.SortItems(true,null);
	var_Editor.DropDownRows = 4;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("Tahoma");
axGrid1.EndUpdate();

869
How do you embed HTML options into the anchor click string

// AnchorClick event - Occurs when an anchor element is clicked.
private void axGrid1_AnchorClick(object sender, AxEXGRIDLib._IGridEvents_AnchorClickEvent e)
{
	System.Diagnostics.Debug.Print( e.anchorID.ToString() );
	System.Diagnostics.Debug.Print( e.options.ToString() );
}
//this.axGrid1.AnchorClick += new AxEXGRIDLib._IGridEvents_AnchorClickEventHandler(this.axGrid1_AnchorClick);

axGrid1.BeginUpdate();
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Car") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("<a mazda_1;options for 1>Mazda <b>1</b></a>");
	var_Items.AddItem("<a mazda_2;options for 2>Mazda <b>2</b></a>");
	var_Items.AddItem("<a mazda_3;options for 3a>Mazda <b>3.a</b></a>");
	var_Items.AddItem("<a mazda_3;options for 3b>Mazda <b>3.b</b></a>");
axGrid1.EndUpdate();

868
How do I add a checkbox column (method 2)

// CellStateChanged event - Fired after cell's state has been changed.
private void axGrid1_CellStateChanged(object sender, AxEXGRIDLib._IGridEvents_CellStateChangedEvent e)
{
	System.Diagnostics.Debug.Print( "CheckBox Changed:" );
	System.Diagnostics.Debug.Print( axGrid1.Items.get_CellState(e.item,e.colIndex).ToString() );
}
//this.axGrid1.CellStateChanged += new AxEXGRIDLib._IGridEvents_CellStateChangedEventHandler(this.axGrid1_CellStateChanged);

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Check") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellState(var_Items.AddItem("Check 1"),0,0);
	var_Items.set_CellState(var_Items.AddItem("Check 2"),0,1);
	var_Items.set_CellState(var_Items.AddItem("Check 3"),0,0);
	var_Items.set_CellState(var_Items.AddItem("Check 4"),0,1);
axGrid1.EndUpdate();

867
How do I add a checkbox column (method 1)

// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	System.Diagnostics.Debug.Print( "CheckBox Changed:" );
	System.Diagnostics.Debug.Print( e.newValue.ToString() );
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

axGrid1.BeginUpdate();
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Check") as EXGRIDLib.Column);
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.CheckValueType;
		var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exCheckValue2,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(0);
	var_Items.AddItem(1);
	var_Items.AddItem(0);
	var_Items.AddItem(1);
axGrid1.EndUpdate();

866
How do I change the progress bar's appearance

EXGRIDLib.Appearance var_Appearance = axGrid1.VisualAppearance;
	var_Appearance.Add(1,"c:\\exontrol\\images\\normal.ebn");
	var_Appearance.Add(2,"c:\\exontrol\\images\\pushed.ebn");
EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Progress") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.ProgressBarType;
	var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exProgressBarBackColor,16777216);
	var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exProgressBarMarkTicker,33554432);
axGrid1.Items.AddItem(33);

865
I have the rows with different background color, and when I select the item it takes the color of the SelBackColor, and therefore is no longer visible behind the color. Is there any option to make the item's color being visible (method 3)

axGrid1.BeginUpdate();
axGrid1.VisualAppearance.Add(1,"gBFLBCJwBAEHhEJAEGg4BVEIQAAYAQGKIYBkAKBQAGaAoDDMOQwQwAAxjGKEEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQCWIAzATGYBRfIUEgjBM6ExwG78e" +
"gBHp/ZpkACIJJAaRjHQdJxGKKMQB9DIhCZpeKhWgkKIJBzOEyBRC4ERBGqNGrsIgLEqWZpnWhaNpWXYTLyBN64LhuK46g53O6wLxvK6hEr2dJ/YBcIAOfghf4NQ7EMRx" +
"LC8Mw3BDvYDkOAABAIgI=");
(axGrid1.GetOcx() as EXGRIDLib.Grid).SelBackColor = 0x1fffffe;
axGrid1.ShowFocusRect = false;
axGrid1.Columns.Add("Items");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_ItemBackColor(var_Items.AddItem("red"),(uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0)));
	var_Items.set_ItemBackColor(var_Items.AddItem("blue"),(uint)ColorTranslator.ToWin32(Color.FromArgb(0,0,255)));
	var_Items.set_ItemBackColor(var_Items.AddItem("green"),(uint)ColorTranslator.ToWin32(Color.FromArgb(0,255,0)));
axGrid1.EndUpdate();

864
I have the rows with different background color, and when I select the item it takes the color of the SelBackColor, and therefore is no longer visible behind the color. Is there any option to make the item's color being visible (method 2)

axGrid1.BeginUpdate();
axGrid1.SelBackMode = EXGRIDLib.BackModeEnum.exTransparent;
axGrid1.ShowFocusRect = false;
axGrid1.Columns.Add("Items");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_ItemBackColor(var_Items.AddItem("red"),(uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0)));
	var_Items.set_ItemBackColor(var_Items.AddItem("blue"),(uint)ColorTranslator.ToWin32(Color.FromArgb(0,0,255)));
	var_Items.set_ItemBackColor(var_Items.AddItem("green"),(uint)ColorTranslator.ToWin32(Color.FromArgb(0,255,0)));
axGrid1.EndUpdate();

863
I have the rows with different background color, and when I select the item it takes the color of the SelBackColor, and therefore is no longer visible behind the color. Is there any option to make the item's color being visible (method 1)

axGrid1.BeginUpdate();
axGrid1.SelBackColor = axGrid1.BackColor;
axGrid1.SelForeColor = axGrid1.ForeColor;
axGrid1.ShowFocusRect = true;
axGrid1.Columns.Add("Items");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_ItemBackColor(var_Items.AddItem("red"),(uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0)));
	var_Items.set_ItemBackColor(var_Items.AddItem("blue"),(uint)ColorTranslator.ToWin32(Color.FromArgb(0,0,255)));
	var_Items.set_ItemBackColor(var_Items.AddItem("green"),(uint)ColorTranslator.ToWin32(Color.FromArgb(0,255,0)));
axGrid1.EndUpdate();

862
The BeforeExpandItem event is fired when clicking the drop down filter button. What we can do to prevent that

// BeforeExpandItem event - Fired before an item is about to be expanded (collapsed).
private void axGrid1_BeforeExpandItem(object sender, AxEXGRIDLib._IGridEvents_BeforeExpandItemEvent e)
{
	System.Diagnostics.Debug.Print( "BeforeExpandItem" );
	System.Diagnostics.Debug.Print( e.item.ToString() );
	axGrid1.Items.InsertItem(e.item,null,"new child");
}
//this.axGrid1.BeforeExpandItem += new AxEXGRIDLib._IGridEvents_BeforeExpandItemEventHandler(this.axGrid1_BeforeExpandItem);

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	EXGRIDLib.Column var_Column = (var_Columns.Add("Items") as EXGRIDLib.Column);
		var_Column.DisplayFilterButton = true;
		var_Column.FilterList = EXGRIDLib.FilterListEnum.exRootItems;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_ItemHasChildren(var_Items.InsertItem(null,null,"Group 1"),true);
	var_Items.set_ItemHasChildren(var_Items.InsertItem(null,null,"Group 2"),true);
axGrid1.EndUpdate();

861
How can I change the shape of the line to be shown when user drag and drop data over the control, EBN

// OLEStartDrag event - Occurs when the OLEDrag method is called.
private void axGrid1_OLEStartDrag(object sender, AxEXGRIDLib._IGridEvents_OLEStartDragEvent e)
{
	// Data.SetData("data to be dragged")
}
//this.axGrid1.OLEStartDrag += new AxEXGRIDLib._IGridEvents_OLEStartDragEventHandler(this.axGrid1_OLEStartDrag);

axGrid1.OLEDropMode = EXGRIDLib.exOLEDropModeEnum.exOLEDropManual;
axGrid1.VisualAppearance.Add(1,"C:\\Program Files\\Exontrol\\ExList\\Sample\\VB\\DragDrop\\insert_bottom.ebn");
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exListOLEDropPosition,0x1000000);
axGrid1.Columns.Add("Default");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("Item 1");
	var_Items.AddItem("Item 2");

860
How can I highlight the item from cursor when the user drag and drop data over the control

// OLEStartDrag event - Occurs when the OLEDrag method is called.
private void axGrid1_OLEStartDrag(object sender, AxEXGRIDLib._IGridEvents_OLEStartDragEvent e)
{
	// Data.SetData("data to be dragged")
}
//this.axGrid1.OLEStartDrag += new AxEXGRIDLib._IGridEvents_OLEStartDragEventHandler(this.axGrid1_OLEStartDrag);

axGrid1.OLEDropMode = EXGRIDLib.exOLEDropModeEnum.exOLEDropManual;
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exListOLEDropPosition,(uint)ColorTranslator.ToWin32(Color.FromArgb(1,0,0)));
axGrid1.Columns.Add("Default");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("Item 1");
	var_Items.AddItem("Item 2");

859
Is it possible to always show the editor for all cells at all times

// AddItem event - Occurs after a new Item has been inserted to Items collection.
private void axGrid1_AddItem(object sender, AxEXGRIDLib._IGridEvents_AddItemEvent e)
{
	axGrid1.Items.set_CellEditorVisible(e.item,0,EXGRIDLib.EditorVisibleEnum.exEditorVisible);
	axGrid1.Items.set_CellEditorVisible(e.item,1,EXGRIDLib.EditorVisibleEnum.exEditorVisible);
}
//this.axGrid1.AddItem += new AxEXGRIDLib._IGridEvents_AddItemEventHandler(this.axGrid1_AddItem);

// EditOpen event - Occurs when the edit operation starts.
private void axGrid1_EditOpen(object sender, EventArgs e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		object v = var_Items.get_CellValue(var_Items.FocusItem,0);
		string c = var_Items.get_CellCaption(var_Items.FocusItem,0);
	EXGRIDLib.Editor var_Editor = axGrid1.Columns[1].Editor;
		var_Editor.ClearItems();
		var_Editor.AddItem(v,c.ToString(),null);
}
//this.axGrid1.EditOpen += new EventHandler(this.axGrid1_EditOpen);

axGrid1.BeginUpdate();
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("DropDownList") as EXGRIDLib.Column);
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.DropDownListType;
		var_Editor.AddItem(1,"First",null);
		var_Editor.AddItem(2,"Second",null);
		var_Editor.AddItem(3,"Third",null);
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
(axGrid1.Columns.Add("DropDownList-Related") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.DropDownListType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem(1),1,-1);
	var_Items.set_CellValue(var_Items.AddItem(2),1,-1);
	var_Items.set_CellValue(var_Items.AddItem(3),1,-1);
	var_Items.set_LockedItemCount(EXGRIDLib.VAlignmentEnum.exBottom,1);
	int h = var_Items.get_LockedItem(EXGRIDLib.VAlignmentEnum.exBottom,0);
	var_Items.set_ItemDivider(h,0);
	var_Items.set_ItemDividerLineAlignment(h,EXGRIDLib.DividerAlignmentEnum.DividerTop);
	var_Items.set_CellEditorVisible(h,0,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.set_CellSingleLine(h,0,EXGRIDLib.CellSingleLineEnum.exCaptionWordWrap);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_CellValue(h,0,"The drop down editor in the second column is filled during the <b>EditOpen event</b>, and the values are based on the selection" +
" on the first column.");
axGrid1.EndUpdate();

858
How do I set a computated cell individually

axGrid1.BeginUpdate();
axGrid1.Columns.Add("Number");
axGrid1.Columns.Add("Format");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("1.23");
	var_Items.set_CellValueFormat(h,1,EXGRIDLib.ValueFormatEnum.exComputedField | EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_CellValue(h,1,"2 * %0 + ` <font ;6><fgcolor=808080>(2 * Number)`");
	h = var_Items.AddItem("1.23");
	var_Items.set_CellValueFormat(h,1,EXGRIDLib.ValueFormatEnum.exComputedField | EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_CellValue(h,1,"3 * %0 + ` <font ;6><fgcolor=808080>(3 * Number)`");
	h = var_Items.AddItem("1.23");
	var_Items.set_CellValueFormat(h,1,EXGRIDLib.ValueFormatEnum.exComputedField | EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_CellValue(h,1,"currency(%0) + ` <font ;6><fgcolor=808080>( Currency(Number) )`");
axGrid1.EndUpdate();

857
Is it possible to assign a different editor for some cells

EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Column - DropDownList") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.DropDownListType;
	var_Editor.AddItem(1,"First item",null);
	var_Editor.AddItem(2,"Second item",null);
	var_Editor.AddItem(3,"Third item",null);
(axGrid1.Columns.Add("Cell - DropDownList") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(1);
	EXGRIDLib.Editor var_Editor1 = var_Items.get_CellEditor(h,1);
		var_Editor1.EditType = EXGRIDLib.EditTypeEnum.DropDownListType;
		var_Editor1.AddItem(1,"<b>First</b> item",null);
		var_Editor1.AddItem(2,"<b>Second</b> item",null);
		var_Editor1.AddItem(3,"<b>Third</b> item",null);
		var_Editor1.AddItem(4,"<b>Forth</b> item",null);
	var_Items.set_CellValue(h,1,2);
	h = var_Items.AddItem(2);
	EXGRIDLib.Editor var_Editor2 = var_Items.get_CellEditor(h,1);
		var_Editor2.EditType = EXGRIDLib.EditTypeEnum.DropDownListType;
		var_Editor2.AddItem(1,"<b>Aka First</b> item",null);
		var_Editor2.AddItem(2,"<b>Aka Second</b> item",null);
		var_Editor2.AddItem(3,"<b>Aka Third</b> item",null);
		var_Editor2.AddItem(4,"<b>Aka Forth</b> item",null);
	var_Items.set_CellValue(h,1,2);

856
Is it possible to define the keys of the drop down values to be strings rather than numeric values

// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	System.Diagnostics.Debug.Print( "NewValue is" );
	System.Diagnostics.Debug.Print( e.newValue.ToString() );
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("DropDownList-String") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.DropDownListType;
	var_Editor.AddItem(1,"NYC|New York City",null);
	var_Editor.AddItem(2,"CJN|Cluj Napoca",null);
EXGRIDLib.Editor var_Editor1 = (axGrid1.Columns.Add("DropDownList-Numeric") as EXGRIDLib.Column).Editor;
	var_Editor1.EditType = EXGRIDLib.EditTypeEnum.DropDownListType;
	var_Editor1.AddItem(1,"New York City",null);
	var_Editor1.AddItem(2,"Cluj Napoca",null);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem("NYC"),1,2);

855
The Change event gets me the today date. How can I find what user typed

// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	System.Diagnostics.Debug.Print( "NewValue:" );
	System.Diagnostics.Debug.Print( e.newValue.ToString() );
	System.Diagnostics.Debug.Print( "EditingValue:" );
	System.Diagnostics.Debug.Print( axGrid1.EditingText );
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Edit") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.DateType;
axGrid1.Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
axGrid1.EndUpdate();

854
I have an edit field, when going to edit mode, the rightmost part is shown. Is it possible to show the left part instead

axGrid1.BeginUpdate();
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Edit") as EXGRIDLib.Column);
	var_Column.Width = 64;
	var_Column.AllowSizing = false;
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.MaskType;
		var_Editor.Mask = ";;;rich";
axGrid1.Columns.Add("Empty");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("This is a bit ot long text");
	var_Items.AddItem("");
axGrid1.EndUpdate();

853
I have a drop down field, the control shows the rightmost part of the selected caption. Is it possible to show the left part

axGrid1.BeginUpdate();
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("DropDown") as EXGRIDLib.Column);
	var_Column.Width = 64;
	var_Column.AllowSizing = false;
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.DropDownAlignment = (EXGRIDLib.AlignmentEnum)0x20;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.DropDownType;
		var_Editor.AddItem(1,"First item. This is a bit ot long text",null);
		var_Editor.AddItem(2,"Second item. This is a bit ot long text",null);
		var_Editor.AddItem(3,"Third item. This is a bit ot long text",null);
		var_Editor.Mask = ";;;rich";
EXGRIDLib.Column var_Column1 = (axGrid1.Columns.Add("PickEdit") as EXGRIDLib.Column);
	var_Column1.Width = 64;
	var_Column1.AllowSizing = false;
	EXGRIDLib.Editor var_Editor1 = var_Column1.Editor;
		var_Editor1.DropDownAlignment = (EXGRIDLib.AlignmentEnum)0x20;
		var_Editor1.EditType = EXGRIDLib.EditTypeEnum.PickEditType;
		var_Editor1.AddItem(1,"First item. This is a bit ot long text",null);
		var_Editor1.AddItem(2,"Second item. This is a bit ot long text",null);
		var_Editor1.AddItem(3,"Third item. This is a bit ot long text",null);
		var_Editor1.Mask = ";;;rich";
axGrid1.Columns.Add("Empty");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem("First item. This is a bit ot long text"),1,"Second item. This is a bit ot long text");
	int h = var_Items.AddItem("First item. This is a bit ot long text");
	EXGRIDLib.Editor var_Editor2 = var_Items.get_CellEditor(h,0);
		var_Editor2.DropDownAlignment = (EXGRIDLib.AlignmentEnum)0x20;
		var_Editor2.EditType = EXGRIDLib.EditTypeEnum.DropDownType;
		var_Editor2.AddItem(1,"First item. This is a bit ot long text",null);
		var_Editor2.AddItem(2,"Second item. This is a bit ot long text",null);
		var_Editor2.AddItem(3,"Third item. This is a bit ot long text",null);
	var_Items.set_CellValue(h,1,"Second item. This is a bit ot long text");
	EXGRIDLib.Editor var_Editor3 = var_Items.get_CellEditor(h,1);
		var_Editor3.DropDownAlignment = (EXGRIDLib.AlignmentEnum)0x20;
		var_Editor3.EditType = EXGRIDLib.EditTypeEnum.PickEditType;
		var_Editor3.AddItem(1,"First item. This is a bit ot long text",null);
		var_Editor3.AddItem(2,"Second item. This is a bit ot long text",null);
		var_Editor3.AddItem(3,"Third item. This is a bit ot long text",null);
axGrid1.EndUpdate();

852
Is there a property for the back color of the dropdown field

axGrid1.BeginUpdate();
EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Date") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.DateType;
	var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exDropDownBackColor,15790320);
	var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exDropDownForeColor,65793);
axGrid1.Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
axGrid1.EndUpdate();

851
Is it possible to change a back color of the field/cell when it takes a focus

// EditClose event - Occurs when the edit operation ends.
private void axGrid1_EditCloseEvent(object sender, EventArgs e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		var_Items.ClearCellBackColor(var_Items.FocusItem,axGrid1.FocusColumnIndex);
}
//this.axGrid1.EditCloseEvent += new EventHandler(this.axGrid1_EditCloseEvent);

// EditOpen event - Occurs when the edit operation starts.
private void axGrid1_EditOpen(object sender, EventArgs e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		var_Items.set_CellBackColor(var_Items.FocusItem,axGrid1.FocusColumnIndex,(uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0)));
	EXGRIDLib.Items var_Items1 = axGrid1.Items;
		var_Items1.set_CellValue(var_Items1.FocusItem,axGrid1.FocusColumnIndex,axGrid1.Items.get_CellValue(axGrid1.Items.FocusItem,axGrid1.FocusColumnIndex));
}
//this.axGrid1.EditOpen += new EventHandler(this.axGrid1_EditOpen);

axGrid1.FullRowSelect = EXGRIDLib.CellSelectEnum.exColumnSel;
(axGrid1.Columns.Add("C1") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
(axGrid1.Columns.Add("C2") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem("v1"),1,"v2");
	var_Items.set_CellValue(var_Items.AddItem("v3"),1,"v4");

850
How can I display the current date mask, but still allow empty values

axGrid1.BeginUpdate();
axGrid1.CauseValidateValue = EXGRIDLib.ValidateValueType.exValidateCell;
axGrid1.FullRowSelect = EXGRIDLib.CellSelectEnum.exColumnSel;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exRowLines;
EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Date") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.DateType;
	var_Editor.Mask = "!99/99/9999;1;;empty=1,validateas=1,invalid=Invalid date\\, for the input mask <br><b>'<%mask%>'</b>!,warning=Invalid character" +
"!,select=4,overtype";
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(null);
	var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.AddItem(null);
axGrid1.EndUpdate();

849
How can I align the days in a DateType editor

axGrid1.Columns.Add("DropDown");
EXGRIDLib.Items var_Items = axGrid1.Items;
	EXGRIDLib.Editor var_Editor = var_Items.get_CellEditor(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0);
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor.DropDownAlignment = EXGRIDLib.AlignmentEnum.RightAlignment;
	EXGRIDLib.Editor var_Editor1 = var_Items.get_CellEditor(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0);
		var_Editor1.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor1.DropDownAlignment = EXGRIDLib.AlignmentEnum.CenterAlignment;
	EXGRIDLib.Editor var_Editor2 = var_Items.get_CellEditor(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0);
		var_Editor2.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor2.DropDownAlignment = EXGRIDLib.AlignmentEnum.LeftAlignment;
	EXGRIDLib.Editor var_Editor3 = var_Items.get_CellEditor(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0);
		var_Editor3.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor3.DropDownAlignment = (EXGRIDLib.AlignmentEnum)0x20;
	EXGRIDLib.Editor var_Editor4 = var_Items.get_CellEditor(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0);
		var_Editor4.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor4.DropDownAlignment = (EXGRIDLib.AlignmentEnum)0x20 | EXGRIDLib.AlignmentEnum.CenterAlignment;
	EXGRIDLib.Editor var_Editor5 = var_Items.get_CellEditor(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0);
		var_Editor5.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor5.DropDownAlignment = (EXGRIDLib.AlignmentEnum)0x20 | EXGRIDLib.AlignmentEnum.RightAlignment;

848
How can I align the drop down portion rather the inside captions

(axGrid1.Columns.Add("DropDown") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.DateType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	EXGRIDLib.Editor var_Editor = var_Items.get_CellEditor(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0);
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor.DropDownAlignment = (EXGRIDLib.AlignmentEnum)0x20;
	EXGRIDLib.Editor var_Editor1 = var_Items.get_CellEditor(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0);
		var_Editor1.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor1.DropDownAlignment = (EXGRIDLib.AlignmentEnum)0x10;
	var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));

847
Is it possible to show a message that the field is empty

axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exRowLines;
axGrid1.FullRowSelect = EXGRIDLib.CellSelectEnum.exColumnSel;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Float") as EXGRIDLib.Column);
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.MaskType;
		var_Editor.Mask = ";;;float,digits=0,grouping=,invalid=empty,warning=invalid character";
axGrid1.Items.AddItem(192278);
axGrid1.Items.AddItem(1000);

846
How can I mask a date

axGrid1.BeginUpdate();
axGrid1.CauseValidateValue = EXGRIDLib.ValidateValueType.exValidateCell;
axGrid1.FullRowSelect = EXGRIDLib.CellSelectEnum.exColumnSel;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exRowLines;
axGrid1.Columns.Add("Date");
axGrid1.Columns.Add("Mask");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	EXGRIDLib.Editor var_Editor = var_Items.get_CellEditor(h,0);
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor.Mask = "{1,12}/{1,31}/{1950,2050};1;;select=1,warning=Invalid character!,invalid=Invalid date\\, for the input mask <br><b>'<%mask%>'</" +
"b>!,validateas=1";
	var_Items.set_CellValue(h,1,var_Items.get_CellEditor(h,0).Mask);
	h = var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	EXGRIDLib.Editor var_Editor1 = var_Items.get_CellEditor(h,0);
		var_Editor1.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor1.Mask = "!99/99/9999;1;;empty,validateas=1,invalid=Invalid date\\, for the input mask <br><b>'<%mask%>'</b>!,warning=Invalid character!," +
"select=4,overtype";
	var_Items.set_CellValue(h,1,var_Items.get_CellEditor(h,0).Mask);
	h = var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	EXGRIDLib.Editor var_Editor2 = var_Items.get_CellEditor(h,0);
		var_Editor2.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor2.Mask = "!99/99/9999;;;empty,validateas=1,invalid=Invalid date\\, for the input mask <br><b>'<%mask%>'</b>!,warning=Invalid character!,s" +
"elect=4,overtype";
	var_Items.set_CellValue(h,1,var_Items.get_CellEditor(h,0).Mask);
	h = var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	EXGRIDLib.Editor var_Editor3 = var_Items.get_CellEditor(h,0);
		var_Editor3.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor3.Mask = "!99/99/9999;; ;select=4,overtype,empty,warning=Invalid character!,invalid=Invalid date\\, for the input mask <br><b>'<%mask%>'<" +
"/b>!,validateas=1";
	var_Items.set_CellValue(h,1,var_Items.get_CellEditor(h,0).Mask);
	h = var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	EXGRIDLib.Editor var_Editor4 = var_Items.get_CellEditor(h,0);
		var_Editor4.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor4.Mask = "![0-9 ][0-9 ]/[0-9 ][0-9 ]/[0-9 ][0-9 ][0-9 ][0-9 ];1;;empty,validateas=1,invalid=Invalid date\\, for the input mask <br><b>'<%" +
"mask%>'</b>!,warning=Invalid character!,select=4,leading= ";
	var_Items.set_CellValue(h,1,var_Items.get_CellEditor(h,0).Mask);
	h = var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.set_FormatCell(h,0,"len(value) ? shortdateF(value) : ``");
	EXGRIDLib.Editor var_Editor5 = var_Items.get_CellEditor(h,0);
		var_Editor5.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor5.Mask = "!99/99/9999;1;;empty,validateas=1,invalid=Invalid date\\, for the input mask <br><b>'<%mask%>'</b>!,warning=Invalid character!," +
"select=4,overtype,leading";
	var_Items.set_CellValue(h,1,var_Items.get_CellEditor(h,0).Mask);
	h = var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.set_FormatCell(h,0,"len(value) ? shortdateF(value) : ``");
	EXGRIDLib.Editor var_Editor6 = var_Items.get_CellEditor(h,0);
		var_Editor6.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor6.Mask = "!00/00/0000;1;;empty,validateas=1,invalid=Invalid date\\, for the input mask <br><b>'<%mask%>'</b>!,warning=Invalid character!," +
"select=4,overtype,leading";
	var_Items.set_CellValue(h,1,var_Items.get_CellEditor(h,0).Mask);
	h = var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.set_FormatCell(h,0,"len(value) ? shortdateF(value) : ``");
	EXGRIDLib.Editor var_Editor7 = var_Items.get_CellEditor(h,0);
		var_Editor7.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor7.Mask = "!00/00/0000;;0;empty,validateas=1,invalid=Invalid date\\, for the input mask <br><b>'<%mask%>'</b>!,warning=Invalid character!," +
"select=4,overtype";
	var_Items.set_CellValue(h,1,var_Items.get_CellEditor(h,0).Mask);
	h = var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.set_FormatCell(h,0,"len(value) ? shortdateF(value) : ``");
	EXGRIDLib.Editor var_Editor8 = var_Items.get_CellEditor(h,0);
		var_Editor8.EditType = EXGRIDLib.EditTypeEnum.DateType;
		var_Editor8.Mask = "!00/00/0000;;;empty,validateas=1,invalid=Invalid date\\, for the input mask <br><b>'<%mask%>'</b>!,warning=Invalid character!,s" +
"elect=1,overtype";
	var_Items.set_CellValue(h,1,var_Items.get_CellEditor(h,0).Mask);
axGrid1.EndUpdate();

845
How can I display and edit an integer number to show grouping digits too ( no decimals)

EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Float") as EXGRIDLib.Column);
	var_Column.FormatColumn = "value format `0`";
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.MaskType;
		var_Editor.Mask = ";;;float,digits=0";
axGrid1.Items.AddItem(192278);

844
How can I display and edit a float number to show grouping digits too

EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Float") as EXGRIDLib.Column);
	var_Column.FormatColumn = "value format ``";
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.MaskType;
		var_Editor.Mask = ";;;float";
axGrid1.Items.AddItem(192278);

843
How can I mask a phone number

axGrid1.CauseValidateValue = EXGRIDLib.ValidateValueType.exValidateCell;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exRowLines;
axGrid1.FullRowSelect = EXGRIDLib.CellSelectEnum.exColumnSel;
(axGrid1.Columns.Add("Phone") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.MaskType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(null);
	EXGRIDLib.Editor var_Editor = var_Items.get_CellEditor(h,0);
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.MaskType;
		var_Editor.Mask = "!(999) 000 0000;1;;select=1,empty,overtype,warning=invalid characer,invalid=The value you entered isn't appropriate for the inp" +
"ut mask <b>'<%mask%>'</b> specified for this field.";
	h = var_Items.AddItem("0123");
	EXGRIDLib.Editor var_Editor1 = var_Items.get_CellEditor(h,0);
		var_Editor1.EditType = EXGRIDLib.EditTypeEnum.MaskType;
		var_Editor1.Mask = "!(999) 000 0000;2;;select=4";
	h = var_Items.AddItem("0123");
	EXGRIDLib.Editor var_Editor2 = var_Items.get_CellEditor(h,0);
		var_Editor2.EditType = EXGRIDLib.EditTypeEnum.MaskType;
		var_Editor2.Mask = "`Phone: `!(999) 000-0000";
	h = var_Items.AddItem("(074) 876-1222");
	EXGRIDLib.Editor var_Editor3 = var_Items.get_CellEditor(h,0);
		var_Editor3.EditType = EXGRIDLib.EditTypeEnum.MaskType;
		var_Editor3.Mask = "!(999) 000-0000;0";

842
Is it possible to display the ColorType fields using RGB format

(axGrid1.Columns.Add("Color") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.ColorType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(255);
	int h = var_Items.AddItem(255);
	EXGRIDLib.Editor var_Editor = var_Items.get_CellEditor(h,0);
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.ColorType;
		var_Editor.Mask = "`RGB(`{0,255}\\,{0,255}\\,{0,255}`)`;;0";
	h = var_Items.AddItem(255);
	EXGRIDLib.Editor var_Editor1 = var_Items.get_CellEditor(h,0);
		var_Editor1.EditType = EXGRIDLib.EditTypeEnum.ColorType;
		var_Editor1.Mask = "`&H`XXXXXXXX`&`;;0;overtype,insertype,warning=Wrong!";
	h = var_Items.AddItem(255);
	EXGRIDLib.Editor var_Editor2 = var_Items.get_CellEditor(h,0);
		var_Editor2.EditType = EXGRIDLib.EditTypeEnum.ColorType;
		var_Editor2.Mask = "`0x`XX `0x`XX `0x`XX;;0;overtype,insertype,warning=Wrong!";
	h = var_Items.AddItem(255);
	EXGRIDLib.Editor var_Editor3 = var_Items.get_CellEditor(h,0);
		var_Editor3.EditType = EXGRIDLib.EditTypeEnum.ColorType;
		var_Editor3.Mask = "R{0,255} G{0,255} B{0,255};;0;overtype,insertype,warning=Wrong!";
	h = var_Items.AddItem(255);
	EXGRIDLib.Editor var_Editor4 = var_Items.get_CellEditor(h,0);
		var_Editor4.EditType = EXGRIDLib.EditTypeEnum.ColorType;
		var_Editor4.Mask = "`(hexa) RGB 0x`XXXXXX;;0;overtype,insertype,warning=Wrong!";
	h = var_Items.AddItem(255);
	EXGRIDLib.Editor var_Editor5 = var_Items.get_CellEditor(h,0);
		var_Editor5.EditType = EXGRIDLib.EditTypeEnum.ColorType;
		var_Editor5.Mask = "`(decimal) Red: `{0,255}` Green: `{0,255}` Blue: `{0,255};;0;overtype,insertype,warning=Wrong!";
	h = var_Items.AddItem(255);
	EXGRIDLib.Editor var_Editor6 = var_Items.get_CellEditor(h,0);
		var_Editor6.EditType = EXGRIDLib.EditTypeEnum.ColorType;
		var_Editor6.Mask = "`(combine) Red: `{0,255}` Green: 0x`XX` Blue: `{0,255};;0;overtype,insertype,warning=Wrong!";

841
How can I add the ExComboBox as an user editor

// UserEditorClose event - Fired the user editor is about to be opened.
private void axGrid1_UserEditorClose(object sender, AxEXGRIDLib._IGridEvents_UserEditorCloseEvent e)
{
	// Items.CellValue(Item,ColIndex) = Object.Value
}
//this.axGrid1.UserEditorClose += new AxEXGRIDLib._IGridEvents_UserEditorCloseEventHandler(this.axGrid1_UserEditorClose);

// UserEditorOleEvent event - Occurs when an user editor fires an event.
private void axGrid1_UserEditorOleEvent(object sender, AxEXGRIDLib._IGridEvents_UserEditorOleEventEvent e)
{
	System.Diagnostics.Debug.Print( e.ev.ToString() );
}
//this.axGrid1.UserEditorOleEvent += new AxEXGRIDLib._IGridEvents_UserEditorOleEventEventHandler(this.axGrid1_UserEditorOleEvent);

// UserEditorOpen event - Occurs when an user editor is about to be opened.
private void axGrid1_UserEditorOpen(object sender, AxEXGRIDLib._IGridEvents_UserEditorOpenEvent e)
{
	// Object.Value = Me.Items.CellValue(Item,ColIndex)
}
//this.axGrid1.UserEditorOpen += new AxEXGRIDLib._IGridEvents_UserEditorOpenEventHandler(this.axGrid1_UserEditorOpen);

axGrid1.BeginUpdate();
EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Exontrol.ComboBox") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.UserEditorType;
	var_Editor.UserEditor("Exontrol.ComboBox","");
	// Add 'ExComboBox 1.0 Control Library(ExComboBox.dll)' reference to your project.
	EXCOMBOBOXLib.ComboBox var_ComboBox = (var_Editor.UserEditorObject as EXCOMBOBOXLib.ComboBox);
		var_ComboBox.BeginUpdate();
		var_ComboBox.Style = EXCOMBOBOXLib.StyleEnum.DropDownList;
		var_ComboBox.ColumnAutoResize = false;
		// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
		ADODB.Recordset rs = new ADODB.Recordset();
			rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",ADODB.CursorTypeEnum.adOpenStatic,ADODB.LockTypeEnum.adLockOptimistic,0);
		var_ComboBox.DataSource = (rs as ADODB.Recordset);
		var_ComboBox.MinHeightList = 128;
		var_ComboBox.SearchColumnIndex = 0;
		var_ComboBox.UseTabKey = false;
		var_ComboBox.EndUpdate();
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exRowLines;
axGrid1.DefaultItemHeight = 21;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellEditorVisible(var_Items.AddItem(10248),0,EXGRIDLib.EditorVisibleEnum.exEditorVisible);
	var_Items.set_CellEditorVisible(var_Items.AddItem(10249),0,EXGRIDLib.EditorVisibleEnum.exEditorVisible);
	var_Items.set_CellEditorVisible(var_Items.AddItem(10250),0,EXGRIDLib.EditorVisibleEnum.exEditorVisible);
axGrid1.EndUpdate();

840
How can I add a header row

axGrid1.ShowLockedItems = true;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exVLines;
axGrid1.Columns.Add("C1");
axGrid1.Columns.Add("C2");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_LockedItemCount(EXGRIDLib.VAlignmentEnum.exTop,1);
	int h = var_Items.get_LockedItem(EXGRIDLib.VAlignmentEnum.exTop,0);
	var_Items.set_ItemBackColor(h,(uint)ColorTranslator.ToWin32(Color.FromArgb(128,128,128)));
	var_Items.set_ItemForeColor(h,(uint)ColorTranslator.ToWin32(Color.FromArgb(255,255,255)));
	var_Items.set_CellValue(h,0,"footer c1");
	var_Items.set_CellValue(h,1,"footer c2");
	var_Items.set_CellValue(var_Items.AddItem("cell"),1,"cell");

839
How can I add a footer row

axGrid1.ShowLockedItems = true;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exVLines;
axGrid1.Columns.Add("C1");
axGrid1.Columns.Add("C2");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_LockedItemCount(EXGRIDLib.VAlignmentEnum.exBottom,1);
	int h = var_Items.get_LockedItem(EXGRIDLib.VAlignmentEnum.exBottom,0);
	var_Items.set_ItemBackColor(h,(uint)ColorTranslator.ToWin32(Color.FromArgb(128,128,128)));
	var_Items.set_ItemForeColor(h,(uint)ColorTranslator.ToWin32(Color.FromArgb(255,255,255)));
	var_Items.set_CellValue(h,0,"footer c1");
	var_Items.set_CellValue(h,1,"footer c2");
	var_Items.set_CellValue(var_Items.AddItem("cell"),1,"cell");

838
How can I programmatically add more columns to the sort bar and other to be sorted, but not included in the sort bar

axGrid1.SortBarVisible = true;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add(0.ToString());
	var_Columns.Add(1.ToString());
	var_Columns.Add(2.ToString());
	var_Columns.Add(3.ToString());
	var_Columns.Add(4.ToString());
axGrid1.Layout = "multiplesort=\"C3:1 C4:2\";singlesort=\"C2:1\"";

837
How can I fix a column, while other sizable and fill the control's client

axGrid1.ColumnAutoResize = true;
axGrid1.Columns.Add("Sizable");
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("F") as EXGRIDLib.Column);
	var_Column.AllowSizing = false;
	var_Column.Width = 16;

836
Is it possible to use empty values on a PickEditType editor (method 2)

EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("DropDown") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.PickEditType;
	var_Editor.AddItem(0,"",null);
	var_Editor.AddItem(1,"The first item",null);
	var_Editor.AddItem(2,"The second item",null);
	var_Editor.AddItem(3,"The third item",null);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("The first item");
	var_Items.AddItem("");
	var_Items.AddItem("The third item");

835
Is it possible to use empty values on a PickEditType editor (method 1)

EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("DropDown") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.PickEditType;
	var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exPickAllowEmpty,true);
	var_Editor.AddItem(1,"The first item",null);
	var_Editor.AddItem(2,"The second item",null);
	var_Editor.AddItem(3,"The third item",null);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("The first item");
	var_Items.AddItem("");
	var_Items.AddItem("The third item");

834
How can I specify an unselectable cell

axGrid1.BeginUpdate();
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("C1");
	var_Columns.Add("C2");
	var_Columns.Add("C3");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("unselectable item");
	var_Items.set_CellValue(h,1,"unselectable item");
	var_Items.set_CellValue(h,2,"unselectable item");
	var_Items.set_SelectableItem(h,false);
	h = var_Items.AddItem("selectable cell");
	var_Items.set_CellValue(h,1,"unselectable cell");
	var_Items.set_CellEnabled(h,1,false);
	var_Items.set_CellForeColor(h,1,(uint)ColorTranslator.ToWin32(Color.FromArgb(0,0,0)));
	var_Items.set_CellValue(h,2,"disabled cell");
	var_Items.set_CellEnabled(h,2,false);
	h = var_Items.AddItem("disabled item");
	var_Items.set_CellValue(h,1,"disabled item");
	var_Items.set_CellValue(h,2,"disabled item");
	var_Items.set_EnableItem(h,false);
	var_Items.set_SelectableItem(h,false);
axGrid1.EndUpdate();

833
Is it possible to edit a float number without using of e/E/d/D (exponent) and +/- (signs) characters

EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Edit") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
	var_Editor.Numeric = EXGRIDLib.NumericEnum.exDisableSigns | EXGRIDLib.NumericEnum.exFloatInteger;
axGrid1.Items.AddItem(1.22);

832
How can I edit a float number with no using of e/E/d/D and + character

EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Edit") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
	var_Editor.Numeric = EXGRIDLib.NumericEnum.exDisablePlus | EXGRIDLib.NumericEnum.exFloatInteger;
axGrid1.Items.AddItem(1.22);

831
Is it possible to edit a float number with no using of e/E/d/D (exponent) characters

EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Edit") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
	var_Editor.Numeric = EXGRIDLib.NumericEnum.exFloatInteger;
axGrid1.Items.AddItem(1.22);

830
How can I edit an integer with no using of +/- signs

EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Edit") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
	var_Editor.Numeric = (EXGRIDLib.NumericEnum)0xfc | EXGRIDLib.NumericEnum.exDisableSigns | EXGRIDLib.NumericEnum.exFloatInteger | EXGRIDLib.NumericEnum.exFloat;
axGrid1.Items.AddItem(1);

829
When I'm trying to show string with "line break" character (vbCrLF) in a textbox, it shows 2 squares. Is there any way to hide these squares

EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Value");
	EXGRIDLib.Column var_Column = (var_Columns.Add("CellSingleLine = False") as EXGRIDLib.Column);
		var_Column.ComputedField = "%0";
		var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellSingleLine,false);
	EXGRIDLib.Column var_Column1 = (var_Columns.Add("FormatColumn/replace CRLF") as EXGRIDLib.Column);
		var_Column1.ComputedField = "%0";
		var_Column1.FormatColumn = "value replace `\\r\\n` with ``";
	EXGRIDLib.Column var_Column2 = (var_Columns.Add("FormatColumn/replace TAB,CRLF") as EXGRIDLib.Column);
		var_Column2.ComputedField = "%0";
		var_Column2.FormatColumn = "(value replace `\\t` with ``) replace `\\r\\n` with ``";
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("a\\ta\\r\\nb\\tb");

828
Is there any way to "unselect" radio group

// DblClick event - Occurs when the user dblclk the left mouse button over an object.
private void axGrid1_DblClick(object sender, AxEXGRIDLib._IGridEvents_DblClickEvent e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		int h = var_Items.get_CellChecked(1234);
		var_Items.set_CellHasCheckBox(0,h,true);
		var_Items.set_CellState(0,h,0);
		var_Items.set_CellHasCheckBox(0,h,false);
}
//this.axGrid1.DblClick += new AxEXGRIDLib._IGridEvents_DblClickEventHandler(this.axGrid1_DblClick);

// SelectionChanged event - Fired after a new item has been selected.
private void axGrid1_SelectionChanged(object sender, EventArgs e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		var_Items.set_CellState(var_Items.FocusItem,0,1);
}
//this.axGrid1.SelectionChanged += new EventHandler(this.axGrid1_SelectionChanged);

axGrid1.MarkSearchColumn = false;
axGrid1.SelBackColor = Color.FromArgb(255,255,128);
axGrid1.SelForeColor = Color.FromArgb(0,0,0);
axGrid1.Columns.Add("Default");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Radio 1");
	var_Items.set_CellHasRadioButton(h,0,true);
	var_Items.set_CellRadioGroup(h,0,1234);
	h = var_Items.AddItem("Radio 2");
	var_Items.set_CellHasRadioButton(h,0,true);
	var_Items.set_CellRadioGroup(h,0,1234);
	var_Items.set_CellState(h,0,1);
	h = var_Items.AddItem("Radio 3");
	var_Items.set_CellHasRadioButton(h,0,true);
	var_Items.set_CellRadioGroup(h,0,1234);

827
The Column.Alignment property does not seem to work for cells with images in them. What can be done

axGrid1.BeginUpdate();
axGrid1.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTq" +
"lVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m" +
"0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" +
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=");
axGrid1.TreeColumnIndex = -1;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
axGrid1.HeaderHeight = 24;
axGrid1.DefaultItemHeight = 24;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Image") as EXGRIDLib.Column);
	var_Column.AllowSizing = false;
	var_Column.Width = 32;
	var_Column.HTMLCaption = "<img>1</img>";
	var_Column.HeaderAlignment = EXGRIDLib.AlignmentEnum.CenterAlignment;
	var_Column.Alignment = EXGRIDLib.AlignmentEnum.CenterAlignment;
	var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
axGrid1.Columns.Add("Rest");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("<img>1</img>");
	var_Items.AddItem("<img>2</img>");
	var_Items.AddItem("<img>3</img>");
axGrid1.EndUpdate();

826
Can I change the format of date to be shown in the control

EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Default");
	EXGRIDLib.Column var_Column = (var_Columns.Add("Format.1") as EXGRIDLib.Column);
		var_Column.ComputedField = "%0";
		var_Column.FormatColumn = "dateF(value) replace `/` with `-`";
	EXGRIDLib.Column var_Column1 = (var_Columns.Add("Format.2") as EXGRIDLib.Column);
		var_Column1.ComputedField = "%0";
		var_Column1.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
		var_Column1.FormatColumn = "`<b>`+ shortdate(value) + `</b> ` + timeF(value)";
	EXGRIDLib.Column var_Column2 = (var_Columns.Add("Format.3") as EXGRIDLib.Column);
		var_Column2.ComputedField = "%0";
		var_Column2.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
		var_Column2.FormatColumn = "( dateF(value) replace `/` with `-` ) + ` <b>`+ ( weekday(value) case ( 0 : `Su`; 1 : `Mo`; 2 : `Tu`; 3 : `We`; 4 : `Th`; 5 : `" +
"Fr`; 6 : `Sa`) )";
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(Convert.ToDateTime("1/1/2001 10:00:00",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.AddItem(Convert.ToDateTime("1/2/2001 10:00:00",System.Globalization.CultureInfo.GetCultureInfo("en-US")));

825
How do I arrange my columns on multiple levels

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = false;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	EXGRIDLib.Column var_Column = (var_Columns.Add("C0") as EXGRIDLib.Column);
		var_Column.ExpandColumns = "1,2";
		var_Column.DisplayExpandButton = false;
	var_Columns.Add("C1");
	var_Columns.Add("C2");
	var_Columns.Add("C3");
	EXGRIDLib.Column var_Column1 = (var_Columns.Add("C4") as EXGRIDLib.Column);
		var_Column1.ExpandColumns = "5,6";
		var_Column1.DisplayExpandButton = false;
	var_Columns.Add("C5");
	EXGRIDLib.Column var_Column2 = (var_Columns.Add("C6") as EXGRIDLib.Column);
		var_Column2.ExpandColumns = "6,7";
		var_Column2.DisplayExpandButton = false;
	var_Columns.Add("C7");
axGrid1.EndUpdate();

824
Does your control support expandable header or columns, so I can arrange it on multiple levels

axGrid1.BeginUpdate();
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
axGrid1.BackColorLevelHeader = Color.FromArgb(240,240,240);
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	EXGRIDLib.Column var_Column = (var_Columns.Add("Photo") as EXGRIDLib.Column);
		var_Column.AllowSizing = false;
		var_Column.Width = 32;
	var_Columns.Add("Personal Info");
	var_Columns.Add("Title");
	var_Columns.Add("Name");
	var_Columns.Add("First");
	var_Columns.Add("Last");
	var_Columns.Add("Address");
	var_Columns["Personal Info"].ExpandColumns = "2,3";
	EXGRIDLib.Column var_Column1 = var_Columns["Name"];
		var_Column1.ExpandColumns = "4,5";
		var_Column1.Expanded = false;
axGrid1.EndUpdate();

823
How can I use the MinWidthAutoResize/MaxWidthAutoResize

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = false;
// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
ADODB.Recordset rs = new ADODB.Recordset();
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",ADODB.CursorTypeEnum.adOpenStatic,ADODB.LockTypeEnum.adLockOptimistic,0);
axGrid1.DataSource = (rs as ADODB.Recordset);
EXGRIDLib.Column var_Column = axGrid1.Columns[0];
	var_Column.MaxWidthAutoResize = 32;
	var_Column.WidthAutoResize = true;
axGrid1.EndUpdate();

822
Does your control support subscript or superscript, in HTML captions

axGrid1.ColumnAutoResize = false;
axGrid1.HeaderHeight = 28;
axGrid1.DefaultItemHeight = 24;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	EXGRIDLib.Column var_Column = (var_Columns.Add("Column 1") as EXGRIDLib.Column);
		var_Column.HTMLCaption = "Column <b><off 2><font ;6>1";
		var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	EXGRIDLib.Column var_Column1 = (var_Columns.Add("Column 2") as EXGRIDLib.Column);
		var_Column1.HTMLCaption = "Column <b><off 2><font ;6>2";
		var_Column1.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	EXGRIDLib.Column var_Column2 = (var_Columns.Add("Column 3") as EXGRIDLib.Column);
		var_Column2.HTMLCaption = "Column <b><off 2><font ;6>3";
		var_Column2.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Item <font ;6><off 4>1");
	var_Items.set_CellValue(h,1,"Item <font ;6><off -6>2");
	var_Items.set_CellValue(h,2,"Item <b><font ;6><off -6>2<off 4>3<off 4>1");

821
How can I specify the splited cell's background color

axGrid1.MarkSearchColumn = false;
axGrid1.TreeColumnIndex = -1;
(axGrid1.Columns.Add("1") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellBackColor,255);
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("2") as EXGRIDLib.Column);
	var_Column.Width = 32;
	var_Column.AllowSizing = false;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("The Item's background color inherits the Column.Def(exCellBackColor)");
	var_Items.set_ItemDivider(h,0);
	h = var_Items.AddItem("The Item's background color inherits the CellBackColor()");
	var_Items.set_ItemDivider(h,0);
	var_Items.set_CellBackColor(h,null,(uint)ColorTranslator.ToWin32(Color.FromArgb(0,255,0)));
	h = var_Items.AddItem("The Item's background color inherits the CellBackColor(), while the split inherits from the Column.Def(exCellBackColor) ");
	var_Items.set_ItemDivider(h,0);
	var_Items.set_CellBackColor(h,null,(uint)ColorTranslator.ToWin32(Color.FromArgb(0,255,0)));
	object var_SplitCell = var_Items.get_SplitCell(h,0);
	h = var_Items.AddItem("The Item's background color inherits the CellBackColor()");
	var_Items.set_ItemDivider(h,0);
	var_Items.set_CellBackColor(h,null,(uint)ColorTranslator.ToWin32(Color.FromArgb(0,255,0)));
	var_Items.set_CellBackColor(0,var_Items.get_SplitCell(h,0),(uint)ColorTranslator.ToWin32(Color.FromArgb(0,0,255)));

820
How can I specify a fixed width for a column

axGrid1.MarkSearchColumn = false;
axGrid1.TreeColumnIndex = -1;
axGrid1.ColumnAutoResize = false;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("C1") as EXGRIDLib.Column);
	var_Column.Width = 17;
	var_Column.AllowSizing = false;
EXGRIDLib.Column var_Column1 = (axGrid1.Columns.Add("C2") as EXGRIDLib.Column);
	var_Column1.Width = 17;
	var_Column1.AllowSizing = false;
axGrid1.Columns.Add("Other");
axGrid1.ColumnAutoResize = true;

819
How can I split a cell in three parts

axGrid1.BeginUpdate();
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
axGrid1.Columns.Add("Default");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("entire");
	h = var_Items.AddItem("split 1");
	h = var_Items.get_SplitCell(h,0);
	var_Items.set_CellValue(0,h,"split 2");
	h = var_Items.get_SplitCell(0,h);
	var_Items.set_CellValue(0,h,"split 3");
	h = var_Items.AddItem("entire");
axGrid1.EndUpdate();

818
How can I find if there is any filter applied to the control

// FilterChange event - Occurs when filter was changed.
private void axGrid1_FilterChange(object sender, EventArgs e)
{
	System.Diagnostics.Debug.Print( "If negative, the filter is present, else not" );
	System.Diagnostics.Debug.Print( axGrid1.Items.VisibleItemCount.ToString() );
}
//this.axGrid1.FilterChange += new EventHandler(this.axGrid1_FilterChange);

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.TreeColumnIndex = -1;
axGrid1.FilterInclude = EXGRIDLib.FilterIncludeEnum.exMatchingItemsOnly;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Column") as EXGRIDLib.Column);
	var_Column.DisplayFilterButton = true;
	var_Column.FilterType = EXGRIDLib.FilterTypeEnum.exFilter;
	var_Column.Filter = "C1";
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("R1");
	var_Items.InsertItem(h,null,"C1");
	var_Items.InsertItem(h,null,"C2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("R2");
	var_Items.InsertItem(h,null,"C1");
	var_Items.InsertItem(h,null,"C2");
axGrid1.ApplyFilter();
axGrid1.EndUpdate();

817
How can I prevent showing the lines for the hierarchy while using the exMatchingItemsOnly option

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.TreeColumnIndex = -1;
axGrid1.FilterInclude = EXGRIDLib.FilterIncludeEnum.exMatchingItemsOnly;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Column") as EXGRIDLib.Column);
	var_Column.DisplayFilterButton = true;
	var_Column.FilterType = EXGRIDLib.FilterTypeEnum.exFilter;
	var_Column.Filter = "C1|C2";
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("R1");
	var_Items.InsertItem(h,null,"C1");
	var_Items.InsertItem(h,null,"C2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("R2");
	var_Items.InsertItem(h,null,"C1");
	var_Items.InsertItem(h,null,"C2");
axGrid1.ApplyFilter();
axGrid1.EndUpdate();

816
Is there any method to get only the matched items and not the items with his parent

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.FilterInclude = EXGRIDLib.FilterIncludeEnum.exMatchingItemsOnly;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Column") as EXGRIDLib.Column);
	var_Column.DisplayFilterButton = true;
	var_Column.FilterType = EXGRIDLib.FilterTypeEnum.exFilter;
	var_Column.Filter = "C1|C2";
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("R1");
	var_Items.InsertItem(h,null,"C1");
	var_Items.InsertItem(h,null,"C2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("R2");
	var_Items.InsertItem(h,null,"C1");
	var_Items.InsertItem(h,null,"C2");
axGrid1.ApplyFilter();
axGrid1.EndUpdate();

815
Is there any property I can save and restore automatically the current setting, column position, size, and so on (2)

axGrid1.BeginUpdate();
axGrid1.Columns.Add("Column");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("Item 1");
	var_Items.AddItem("Item 2");
	var_Items.AddItem("Item 3");
axGrid1.Layout = "Select=\"0\";SingleSort=\"C0:2\";Columns=1";
axGrid1.EndUpdate();

814
Is there any property I can save and restore automatically the current setting, column position, size, and so on (1)

axGrid1.BeginUpdate();
axGrid1.Columns.Add("Column");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("Item 1");
	var_Items.AddItem("Item 2");
	var_Items.AddItem("Item 3");
axGrid1.Layout = "gBjAAwAAuABmABpABsAB0ABlAByhoAPIAOEPAA9gYABoABQAgUEg0XN4AOcJicKkpujMbjsfkMFk0YhkQgUOjUEl8gjcGO0ok8KMULjEaGMcj08kQAO8oMkTNEtGwAG" +
"QAqc7gUlhh1ABtAEsk9GpEfhElgVcsMupNlnlonlaAFcr0shUsp8QPEtnVJqJhmcIhUMh0QiU5sYAqMngUSuEMw07k8Qv0SgVRrNEuVflF2jF5x9JyNEm0TjQijemyE0" +
"jE3t+YruauoAu4Az1qj9BzRn0UzksSnAA0xDjY6qnAw8OiUQ0dwzN0zWz2t7j8/xURAGNvWH6k8xlEhklhEI0O/6QAgI=";
axGrid1.EndUpdate();

813
I have noticed that the column's header is changed once the cursor hovers it. Is it possible to change that visual appearance

axGrid1.VisualAppearance.Add(1,"c:\\exontrol\\images\\normal.ebn");
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	var_Columns.Add("Column 2");
(axGrid1.GetOcx() as EXGRIDLib.Grid).BackColorHeader = 0x1000000;
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exCursorHoverColumn,0x12d86ff);

812
Is it possible to change the visual appearance of the columns selector/floating bar(3)

axGrid1.ColumnAutoResize = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	(var_Columns.Add("Column 2") as EXGRIDLib.Column).Visible = false;
axGrid1.VisualAppearance.Add(2,"c:\\exontrol\\images\\normal.ebn");
axGrid1.VisualAppearance.Add(3,"c:\\exontrol\\images\\pushed.ebn");
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exColumnsFloatAppearance,0x2000000);
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exColumnsFloatBackColor,0x3000000);
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exColumnsFloatCaptionBackColor,(uint)ColorTranslator.ToWin32(Color.FromArgb(246,245,240)));
axGrid1.ColumnsFloatBarVisible = EXGRIDLib.ColumnsFloatBarVisibleEnum.exColumnsFloatBarVisibleIncludeHiddenColumns;

811
Is it possible to change the visual appearance of the columns selector/floating bar(2)

axGrid1.ColumnAutoResize = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	(var_Columns.Add("Column 2") as EXGRIDLib.Column).Visible = false;
axGrid1.VisualAppearance.Add(3,"c:\\exontrol\\images\\pushed.ebn");
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exColumnsFloatBackColor,0x3000000);
axGrid1.ColumnsFloatBarVisible = EXGRIDLib.ColumnsFloatBarVisibleEnum.exColumnsFloatBarVisibleIncludeHiddenColumns;

810
Is it possible to change the visual appearance of the columns selector/floating bar(1)

axGrid1.VisualAppearance.Add(2,"c:\\exontrol\\images\\normal.ebn");
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exColumnsFloatAppearance,0x2000000);
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exColumnsFloatBackColor,(uint)ColorTranslator.ToWin32(Color.FromArgb(246,245,240)));
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exColumnsFloatCaptionBackColor,(uint)ColorTranslator.ToWin32(Color.FromArgb(246,245,240)));
axGrid1.ColumnsFloatBarVisible = EXGRIDLib.ColumnsFloatBarVisibleEnum.exColumnsFloatBarVisibleIncludeHiddenColumns;

809
I am using the ColumnsFloatBarVisible property on True, but still not able to add any column on that list

axGrid1.ColumnAutoResize = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	(var_Columns.Add("Column 2") as EXGRIDLib.Column).Visible = false;
axGrid1.ColumnsFloatBarVisible = EXGRIDLib.ColumnsFloatBarVisibleEnum.exColumnsFloatBarVisibleIncludeHiddenColumns;

808
Is it possible to list a column to columns selector/floating bar, but still user can use it

axGrid1.ColumnAutoResize = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	(var_Columns.Add("Column 2") as EXGRIDLib.Column).Visible = false;
	EXGRIDLib.Column var_Column = (var_Columns.Add("Column 3") as EXGRIDLib.Column);
		var_Column.Visible = false;
		var_Column.Enabled = false;
axGrid1.ColumnsFloatBarVisible = EXGRIDLib.ColumnsFloatBarVisibleEnum.exColumnsFloatBarVisibleIncludeHiddenColumns;

807
How can I prevent a specific column not to be listed in the columns selector/floating bar

axGrid1.ColumnAutoResize = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	(var_Columns.Add("Column 2") as EXGRIDLib.Column).Visible = false;
	EXGRIDLib.Column var_Column = (var_Columns.Add("Column 3") as EXGRIDLib.Column);
		var_Column.Visible = false;
		var_Column.AllowDragging = false;
axGrid1.ColumnsFloatBarVisible = EXGRIDLib.ColumnsFloatBarVisibleEnum.exColumnsFloatBarVisibleIncludeHiddenColumns;

806
Is it possible to change the "Columns" caption being shown in the columns selector/floating bar

axGrid1.ColumnAutoResize = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	(var_Columns.Add("Column 2") as EXGRIDLib.Column).Visible = false;
axGrid1.set_Description(EXGRIDLib.DescriptionTypeEnum.exColumnsFloatBar,"Hidden Columns");
axGrid1.ColumnsFloatBarVisible = EXGRIDLib.ColumnsFloatBarVisibleEnum.exColumnsFloatBarVisibleIncludeHiddenColumns;

805
How can I show the columns selector, so the user can drag and drop columns to the view

axGrid1.ColumnAutoResize = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	(var_Columns.Add("Column 2") as EXGRIDLib.Column).Visible = false;
axGrid1.ColumnsFloatBarVisible = EXGRIDLib.ColumnsFloatBarVisibleEnum.exColumnsFloatBarVisibleIncludeHiddenColumns;

804
The column's header is changed while the cursor hovers it. Is it possible to prevent that

EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	var_Columns.Add("Column 2");
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exCursorHoverColumn,-1);

803
I noticed that when grouping on a field, its details are always expanded. Is it possible to show collapsed by default (method 2)

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = false;
// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
ADODB.Recordset rs = new ADODB.Recordset();
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",ADODB.CursorTypeEnum.adOpenStatic,ADODB.LockTypeEnum.adLockOptimistic,0);
axGrid1.DataSource = (rs as ADODB.Recordset);
axGrid1.SortBarVisible = true;
axGrid1.SortBarCaption = "Drag a <b>column</b> header here to group by that column.";
axGrid1.AllowGroupBy = true;
axGrid1.Columns[1].SortOrder = EXGRIDLib.SortOrderEnum.SortAscending;
axGrid1.EndUpdate();
axGrid1.BeginUpdate();
axGrid1.EnsureVisibleColumn(0);
axGrid1.Items.set_ExpandItem(0,false);
axGrid1.EndUpdate();

802
I noticed that when grouping on a field, its details are always expanded. Is it possible to show collapsed by default (method 1)

// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
private void axGrid1_AddGroupItem(object sender, AxEXGRIDLib._IGridEvents_AddGroupItemEvent e)
{
	axGrid1.Items.set_ExpandItem(e.item,false);
}
//this.axGrid1.AddGroupItem += new AxEXGRIDLib._IGridEvents_AddGroupItemEventHandler(this.axGrid1_AddGroupItem);

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = false;
// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
ADODB.Recordset rs = new ADODB.Recordset();
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",ADODB.CursorTypeEnum.adOpenStatic,ADODB.LockTypeEnum.adLockOptimistic,0);
axGrid1.DataSource = (rs as ADODB.Recordset);
axGrid1.SortBarVisible = true;
axGrid1.SortBarCaption = "Drag a <b>column</b> header here to group by that column.";
axGrid1.AllowGroupBy = true;
axGrid1.Columns[1].SortOrder = EXGRIDLib.SortOrderEnum.SortAscending;
axGrid1.EndUpdate();

801
Is there a possibility to expand / collapse all groups (or group by group) at runtime with a method (equivalent to pressing the + or - button in the group header)

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = false;
// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
ADODB.Recordset rs = new ADODB.Recordset();
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",ADODB.CursorTypeEnum.adOpenStatic,ADODB.LockTypeEnum.adLockOptimistic,0);
axGrid1.DataSource = (rs as ADODB.Recordset);
axGrid1.SortBarVisible = true;
axGrid1.SortBarCaption = "Drag a <b>column</b> header here to group by that column.";
axGrid1.AllowGroupBy = true;
axGrid1.Columns[1].SortOrder = EXGRIDLib.SortOrderEnum.SortAscending;
axGrid1.EndUpdate();
axGrid1.EnsureVisibleColumn(0);
axGrid1.BeginUpdate();
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_ExpandItem(var_Items.get_RootItem(0),false);
	var_Items.set_ExpandItem(var_Items.get_RootItem(1),false);
	var_Items.set_ExpandItem(var_Items.get_RootItem(2),false);
axGrid1.EndUpdate();